package cn.edu.lcu.cs.javateaching.io;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

/**
 * 某人玩游戏的时候输入密码123456后成功进入游戏（输错5次强行退出），要求用程序实现密码验证的过程。要求如下：
 * 
 * a) 使用System.in包装为字符流读取键盘输入。
 * 
 * b) BufferedReader对字符流进行包装。调用BufferedReader的readLine()方法每次读取一行。
 * 
 * c) 在for循环中判断输入的密码是否是123456，如果是则打印“恭喜你进入游戏”，并跳出循环，否则继续循环读取键盘输入。
 * 
 * d) 当循环完毕，密码还不正确，则打印“密码错误，结束游戏”，并调用 System.exit(0)方法结束程序。
 * 
 * @author Ling
 *
 */
public class GameLogin {

	public static void main(String[] args) {
		login();
	}

	private static void login() {
		boolean isPassed = false;
		System.out.println("请输入密码，最多5次机会！");
		int maxCount = 5;
		String line;
		try (BufferedReader reader = new BufferedReader(new InputStreamReader(System.in))) {
			for (int i = 0; i < maxCount; i++) {
				line = reader.readLine().trim(); // 读取一行字符并去掉首尾空白符
				if ("123456".equals(line)) {
					isPassed = true;
					break;
				}
			}
		} catch (IOException e) {
			e.printStackTrace();
		}
		if (isPassed) {
			System.out.println("恭喜你进入游戏");
		} else {
			System.out.println("密码错误，结束游戏。");
			System.exit(0);
		}
	}

}
